<?xml version="1.0" encoding="UTF-8"?>
<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.prime.com.tr/ui">
    <h:head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <title>Sistema de Votacion</title>
    </h:head>
    <h:body>
        <h1>Zona</h1>
        <h:form>
            <h:panelGrid columns="3" id="panelCampos">
                <h:outputLabel value="Codigo: "/>
                 <h:panelGroup>
                     <h:inputText value="#{zonaControlador.codigo}"
                                 id="inputCodZ"
                                 required="true"
                                 requiredMessage="El dato es requerido"
                                 converterMessage="El dato debe ser un numero entero mayor a 0"
                                 validatorMessage="El numero debe ser mayor a 0" >
                                 <f:validateLongRange minimum="1"/>
                                 <f:ajax event="change"/>
                    </h:inputText>
                    <p:commandButton type="pust"
                                    image="ui-icon-search"
                                    onclick="dialogoZona.show()"
                                    style="width: 25px; height: 25px;position: relative; top: 10px" />
                </h:panelGroup>

                <p:message for="inputCodZ" />
                <h:outputLabel value="Nombre: "/>
                <h:inputText value="#{zonaControlador.nombre}"
                             id="inputNoZ"
                             required="true"
                             requiredMessage="El dato es requerido">
                <f:ajax event="change"/>
                </h:inputText>
                <p:message for="inputNoZ"/>
                
                <h:outputLabel value="Distrito: "/>
                <h:selectOneMenu value="#{zonaControlador.distrito}"
                                 id="selectDistrito"
                                 converter="DistritoConverter"
                                 converterMessage="Error de conversion">
                    <f:selectItems value="#{zonaControlador.listaDistritos}"
                                   var="distrito"
                                   itemLabel="#{distrito.disNombre}"
                                   id="itemsDelSelect"/>
                </h:selectOneMenu>
                <p:message for="selectDistrito"/>

               
            </h:panelGrid>
             <h:panelGrid columns="4" id="panelBotones">
                <h:commandButton value="Guardar"
                                 action="#{zonaControlador.grabar}"
                                 style="width: 100px">
                    <f:ajax render="panelCampos zonaTabla"/>
                </h:commandButton>
                <h:commandButton value="Borrar"
                                 actionListener="#{zonaControlador.borrar}"
                                 style="width: 100px"
                                 id="botonBorrar">
                    <f:ajax render="panelCampos zonaTabla"/>
                </h:commandButton>
                <h:commandButton value="Limpiar"
                                 actionListener="#{zonaControlador.limpiar}"
                                 immediate="true"
                                 style="width: 100px">
                    <f:ajax render="panelCampos"/>
                </h:commandButton>
                <h:commandButton value="Salir"
                                 onclick="index"
                                 action="../index.xhtml" immediate="true"
                                 style="width: 100px">
                </h:commandButton>
            </h:panelGrid>
            <p:dialog header="Seleccione una Zona"
                              widgetVar="dialogoZona"
                              width="540"
                              styleClass="outputpanel"
                              height="500"
                              closable="true"
                              closeOnEscape="true"
                              modal="true">

                            <h:panelGrid>
                                    <h:outputText id="listadoDeZonas"
                                                  value="Zona"
                                                  styleClass="tituloTabla"/>
                                            <p:dataTable  id="zonaTabla"
                                                          paginator="true"
                                                          selectionMode="single"
                                                          rows="10"
                                                          style="width:500px"
                                                          paginatorTemplate="{PreviousPageLink} {CurrentPageReport} {NextPageLink} {RowsPerPageDropdown} "
                                                          rowsPerPageTemplate="5,10,15"
                                                          var="fila"
                                                          value="#{zonaControlador.listarTodos}"
                                                          rowStyleClass="#{empty rowIx or rowIx mod 2 ne 0 ? 'even-row' : 'odd-row'}"
                                                          rowIndexVar="rowIx"
                                                          update="inputCodZ, inputNoZ, selectDistrito, itemsDelSelect"
                                                          onselectComplete="dialogoZona.hide()"
                                                          selection="#{zonaControlador.zona}">

                                                          <p:column id="zona"
                                                                    sortBy="#{fila.zonaNombre}"
                                                                    filterBy="#{fila.zonaNombre}">
                                                                    <f:facet name="header">Zona</f:facet>
                                                                    <h:outputText id="zonaActual"
                                                                                  value="#{fila.zonaNombre}" >
                                                                    </h:outputText>
                                                          </p:column>

                                                          <p:column id="idzona"
                                                                    sortBy="#{fila.idZona}"
                                                                    filterBy="#{fila.idZona}"   >
                                                                    <f:facet name="header">Codigo</f:facet>
                                                                    <h:outputText id="idzonaActual"
                                                                                  value="#{fila.idZona}"/>
                                                          </p:column>
                                                          <p:column id="idistrito"
                                                                    sortBy="#{fila.distrito.disNombre}"
                                                                    filterBy="#{fila.distrito.disNombre}"   >
                                                                    <f:facet name="header">Distrito</f:facet>
                                                                    <h:outputText id="idistritoActual"
                                                                                  value="#{fila.distrito.disNombre}"/>
                                                          </p:column>
                                            </p:dataTable>
                            </h:panelGrid>
                    </p:dialog>
        </h:form>
    </h:body>
</html>
